import type { AxiosRequestConfig, AxiosResponse, InternalAxiosRequestConfig } from 'axios'
export interface IRequestIerface {
  // 请求拦截器配置 定义 成功 配置
  requestIntercetor?: (config: InternalAxiosRequestConfig) => InternalAxiosRequestConfig
  // 请求拦截器的配置 定义 报错
  requestItercetorCatch?: (error: any) => any
  // 相应拦截器配置 定义 成功  配置
  responseInterceptor?: (res: AxiosResponse) => AxiosResponse
  // 相应拦截器的配置定义  err报错
  responseInterceptorCatch?: (error: any) => any
}
// 继承请求拦截器config配置
export interface IRequestConfig extends InternalAxiosRequestConfig {
  // 在后续配置拦截器时候 可选  并遵循上面的定义 同时也遵循 AxiosRequestConfig 的相关定义
  interceptors?: IRequestIerface
}